Logic Timing and Reliability Repair for Nanowire Circuits

ABSTRACT

A method for improving an integrated circuit design having transistors with nanowire channels comprises identifying a particular device having a particular transistor with a nanowire channel; and adding to the integrated circuit design a controller which, when activated, repairs the particular transistor by self-heating. A critical path in logic circuitry in the design can be determined including a particular device having a transistor with a nanowire channel. A repair circuit can be added to the design connected to the particular device, the repair circuit when activated applying a self-heating stress to the particular device. The repair circuit can include a selection block selecting among a plurality of signals as an input signal to the particular device. The plurality of signals include a repair signal and an operational logic signal, the repair signal being such as to apply the self-heating stress to the nanowire channel of the particular device when activated.

CROSS-REFERENCE TO OTHER APPLICATIONS

This application is a Divisional of U.S. Non-Provisional applicationSer. No. 15/634,845, entitled “Logic Timing and Reliability Repair forNanowire Circuits,” filed on 27 Jun. 2017 (Atty. Docket No. SYNP2919-3), which application claims the benefit of U.S. Provisional PatentApplication No. 62/357,892, entitled “LOGIC TIMING AND RELIABILITYREPAIR UTILIZING NANOWIRE SELF-HEATING,” filed on 1 Jul. 2016 (Atty.Docket No. SYNP 2919-1), U.S. Provisional Patent Application No.62/384,337, entitled “ENHANCING MEMORY YIELD AND PERFORMANCE THROUGHUTILIZING NANOWIRE SELF-HEATING,” filed on 7 Sep. 2016 (Attorney DocketNo. SYNP 2919-2), U.S. Provisional Patent Application No. 62/357,897,entitled “ENHANCING MEMORY YIELD AND PERFORMANCE THROUGH UTILIZINGNANOWIRE SELF-HEATING,” filed on 1 Jul. 2016 (Atty. Docket No. SYNP2920-1), and is a Continuation of U.S. Non-Provisional application Ser.No. 15/634,906, entitled “ENHANCING MEMORY YIELD AND PERFORMANCE THROUGHUTILIZING NANOWIRE SELF-HEATING,” filed 27 Jun. 2017 (Atty. Docket No.SYNP 2920-2), which application claims the benefit of U.S. ProvisionalPatent Application No. 62/357,892, entitled “LOGIC TIMING ANDRELIABILITY REPAIR UTILIZING NANOWIRE SELF-HEATING,” filed on 1 Jul.2016 (Atty. Docket No. SYNP 2919-1), U.S. Provisional Patent ApplicationNo. 62/384,337, entitled “ENHANCING MEMORY YIELD AND PERFORMANCE THROUGHUTILIZING NANOWIRE SELF-HEATING,” filed on 7 Sep. 2016 (Attorney DocketNo. SYNP 2919-2), and U.S. Provisional Patent Application No.62/357,897, entitled “ENHANCING MEMORY YIELD AND PERFORMANCE THROUGHUTILIZING NANOWIRE SELF-HEATING,” filed on 1 Jul. 2016 (Atty. Docket No.SYNP 2920-1), and is also a Continuation of U.S. Non-Provisionalapplication Ser. No. 15/634,845, entitled “Logic Timing and ReliabilityRepair for Nanowire Circuits,” filed on 27 Jun. 2017 (Atty. Docket No.SYNP 2919-3), which applications are incorporated herein by reference intheir entirety.

FIELD

The present invention relates to on-chip device repair, and moreparticularly to nanowire device repair, and to electronic designautomation relating to the same.

BACKGROUND

Transistors in an integrated circuit have critical performanceparameters that have statistical distributions around nominal valuescaused for example by variability of manufacturing steps. For aparticular fabrication process, a foundry typically specifies todesigners information about these nominal values and variability. If achip is designed to work properly only if the nominal values areachieved in a particular manufactured device, then as many as half themanufactured devices will not work. Designers therefore have to designtheir circuits to a specification that is some amount inferior to thespecified nominal values to account for device variability.

Commonly, foundries describe variability of a parameter by assuming itconforms to a Gaussian distribution. The actual distribution may not beexactly Gaussian, but a Gaussian distribution is usually presumed. Sucha distribution is characterized by a mean and a standard deviation,where the value of a standard deviation of a parameter from the nominalvalue is a measure of that parameter's variability. Circuit designersoften design their chips to function properly should any criticalparameter of a manufactured chip be up to 3 standard deviations inferiorto the specified nominal value; so the design target is nominalperformance minus three times the standard deviation (also called “3sigmas”). Manufactured chips that do not meet this 3 sigma window may bediscarded.

With the upcoming transition from FinFETs to nanowire transistors,transistor variability is expected to increase, which means that thevalue of sigma will increase. Thus the 3 sigma margin will alsoincrease, forcing designers to design their chips to a specificationthat is significantly below the foundry's specified nominal performanceparameters. Such wide variabilities also make electronic designautomation for high performance integrated circuits more complex.

SUMMARY

A technology, including circuitry, manufacturing methods and improveddesign automation tools, is provided for reducing the impact ofvariability in the operating parameters of nanowire-based devices, andimproving the performance of electronic design automation tools used inthe design process. The technology can enable design, manufacture anduse of higher performance circuits. The technology can provide a methodfor improving an integrated circuit design which has transistors withnanowire channels, including identifying a particular device having aparticular transistor with a nanowire channel; and adding to theintegrated circuit design a controller which, when activated, repairsthe particular transistor by self-heating.

In one aspect of the technology, for improving an integrated circuitdesign including logic circuitry with devices having transistors withnanowire channels, an automated design method includes adding repaircircuits to the design that are coupled to the devices in the circuitry.The repair circuits can apply healing current in some embodiments, thatcan adjust critical parameters of the devices and the circuit as awhole. The method includes determining a critical path in the logiccircuitry, where the critical path includes a particular device having atransistor with a nanowire channel. If the critical path does not safelymeet a timing specification given the performance variations of thedevices, then a repair circuit can be added to the integrated circuitdesign connected to the particular device in the critical path, therepair circuit when activated applying a self-heating stress to theparticular device in the critical path. In one embodiment, a timingslack of each of a plurality of signal paths in the logic circuitry canbe calculated, wherein the step of determining a critical path cancomprise choosing a signal path in which the calculated timing slack isnegative. A repairable path as used herein refers to a path, which canbe a critical path, in logic circuitry in an integrated circuit to whicha repair circuit as described herein is connected.

A repair circuit for this purpose can include for example a selectionblock selecting among a plurality of signals as an input signal to theparticular device, the plurality of signals including a repair signaland an operational logic signal, the repair signal being such as toapply the self-heating stress to the nanowire channel of the particulardevice when activated.

In one embodiment, the design method can include adding a two levelpower supply to the integrated circuit design, where the two level powersupply can provide a first supply voltage and a second supply voltagehigher than the first supply voltage. The design method can includeadding a controller to the integrated circuit design, where thecontroller can be configured to provide the second supply voltage to theparticular device while selecting the repair signal as the input signalto the particular device via the selection block, and to provide thefirst supply voltage to the particular device while selecting theoperational logic signal as the input signal to the particular devicevia the selection block. In an alternative embodiment, a single levelpower supply can be used instead of a two level power supply, to providea supply voltage to the particular device in applying a stress to theparticular device, where the supply voltage is also applied to theparticular device in normal logic operation.

In one embodiment, the design method can include adding a signal sourceto the integrated circuit design to generate the repair signal as a timevarying signal causing the particular device to switch repeatedly whilepowered by the second supply voltage of a two level power supply or bythe supply voltage of a single level power supply, at a rate or ratessufficient to induce the self-heating stress to the nanowire channel ofthe particular device. Preferably the repeated switching involves theparticular device switching at a high frequency equal to orsignificantly exceeding the clock frequency of the logic circuitry whenthe logic circuitry is powered with a supply voltage VDD to generate acertain amount of Joule heating in the particular device, or switchingat a frequency lower than the clock frequency when the logic circuitryis powered with a supply voltage higher than the VDD, to generate thesame amount of Joule heating in the particular device. The on-stateresistance of a nanowire transistor is higher than that of a FinFET (FinField Effect Transistor), and consequently causing the particular deviceto switch repeatedly as described herein can generate more Joule heatingthan in a FinFET. The amount of Joule heating generated in a particulardevice should be enough to cause diffusion into the nanowire channel ofsource and drain dopants of the transistor in the particular device, butnot too much so as to degrade its performance by an irreversiblebreakdown or creating too much oxide charges.

An integrated circuit can be manufactured with the improved design.

In a manufacturing process, or in the field, an integrated circuitimplemented according to the improved integrated circuit design can takeadvantage of the repair circuits. In one example, a repairable pathwhich has a negative timing slack can be identified in the logiccircuitry based on measured timing tests. A stress can be applied on aparticular device having a transistor with a nanowire channel in therepairable path to change the timing slack of the repairable path.Identifying a repairable path can comprise sensing speed of therepairable path. Static leakage current of the integrated circuit can bemeasured, and before applying the stress, it can be determined that thestatic leakage current of the integrated circuit is below a leakagelimit of the integrated circuit.

Applying the stress can cause an increase in the read current throughthe repairable path including the nanowire channel of the transistor.Applying the stress can induce a self-heating stress to the nanowirechannel of the particular device, the self-heating stress causingdiffusion into the nanowire channel of source and drain dopants of thetransistor in the particular device. Applying the stress can be repeateduntil the timing slack of the repairable path is not negative, eachrepetition of said applying the stress doing so for an increasedduration than the previous occurrence of said applying the stress.

Applying a stress can include providing the second supply voltage to theparticular device, and selecting the repair signal as the input signalto the particular device via the selection block. The repair signal cancomprise a time varying signal causing the particular device to switchrepeatedly while powered by the second supply voltage, at a rate orrates sufficient to induce the self-heating stress to the nanowirechannel of the particular device. In an alternative embodiment, a singlelevel power supply in the integrated circuit can be used instead of atwo level power supply, to provide a supply voltage to the particulardevice in applying a stress to the particular device, where the supplyvoltage is also applied to the particular device in normal logicoperation. In this embodiment, the repair signal can comprise a timevarying signal causing the particular device to switch repeatedly whilepowered by the supply voltage of the single level power supply, at arate or rates sufficient to induce the self-heating stress to thenanowire channel of the particular device.

An integrated circuit is provided that includes logic circuitry withdevices having transistors with nanowire channels. The integratedcircuit includes a repairable path in the logic circuitry, therepairable path including a particular device having a transistor with ananowire channel; and a repair circuit connected to the particulardevice in the repairable path, the repair circuit including a selectionblock selecting among a plurality of signals as an input signal to theparticular device, the plurality of signals including a repair signaland an operational logic signal, the repair signal being such as toapply a self-heating stress to the nanowire channel of the particulardevice when activated.

In one embodiment, the integrated circuit can include a two level powersupply providing a first supply voltage and a second supply voltagehigher than the first supply voltage and a controller. The controllercan be configured to provide the second supply voltage to the particulardevice while selecting the repair signal as the input signal to theparticular device via the selection block, and to provide the firstsupply voltage to the particular device while selecting the operationallogic signal as the input signal to the particular device via theselection block. In an alternative embodiment, a single level powersupply can be used instead of a two level power supply, to provide asupply voltage to the particular device in applying a stress to theparticular device, where the supply voltage is also applied to theparticular device in normal logic operation.

The integrated circuit can include a signal source to generate therepair signal as a time varying signal causing the particular device toswitch repeatedly while powered by the second supply voltage of a twolevel power supply or by the supply voltage of a single level powersupply, at a rate or rates sufficient to induce the self-heating stressto the nanowire channel of the particular device.

Repair circuits can be added to many devices in many repairable paths inthe starting design. Thus, the integrated circuit can include a secondrepairable path in the logic circuitry, the second repairable pathincluding a second operational logic signal and a second device having atransistor with a nanowire channel, and a second repair circuitconnected to the second device, the second repair circuit including asecond selection block selecting among a plurality of signals as asecond input signal to the second device, the plurality of signalsincluding a second repair signal and a second operational logic signal,the second repair signal being such as to apply a self-heating stress tothe nanowire channel of the second device when activated.

In one embodiment, the controller can be configured to select the secondoperational logic signal as the second input signal to the second devicevia the second selection block, while the repair signal is selected asthe input signal to the particular device. In another embodiment, thecontroller can be configured to select the second repair signal as thesecond input signal to the second device via the second selection block,while the repair signal is selected as the input signal to theparticular device, the second repair signal being a time varying signalcausing the second device to switch repeatedly while powered by thesecond supply voltage of a two level power supply or by the supplyvoltage of a single level power supply, at a rate or rates sufficient toinduce a self-heating stress to the nanowire channel of the seconddevice. In yet another embodiment, the controller can be configured toselect the second repair signal as the second input signal to the seconddevice via the second selection block, while the repair signal isselected as the input signal to the particular device, the second repairsignal being a steady signal not causing devices in the second device toswitch repeatedly.

In another aspect of the technology, for improving an integrated circuitdesign including memory cells having transistors with nanowire channels,a method includes adding circuitry configured to perform a repairprocess on a nanowire channel of a transistor in a memory cell, thetransistor on a current path through an intermediate storage node in thememory cell and a bit line connected to the memory cell.

The repair process can include programming the intermediate storage nodeto a first voltage during a time period; enabling a word line connectedto the memory cell, after the intermediate storage node is programmed tothe first voltage; and applying a second voltage on the bit line for aduration longer than the time period, the second voltage inducing arepair current to flow through the current path for self-heating thetransistor on the current path.

In one instance, the transistor in a memory cell is a first N-typedevice, the memory cell includes a second N-type device with a nanowirechannel, and the intermediate storage node is coupled to the first andsecond N-type devices, and the first voltage is lower than the secondvoltage. The memory cell is powered with a supply voltage, and thesecond voltage can be higher than the supply voltage. A precharge devicecan be connected to the bit line for precharging the bit line whensensing a read current of the memory cell connected to the bit line, andthe second voltage is lower than a sum of the supply voltage and athreshold voltage of the precharge device. Alternatively the secondvoltage can be substantially equal to the supply voltage. As usedherein, the term “substantially” is intended to accommodatemanufacturing tolerances.

In another instance, the transistor is a P-type device, the memory cellincludes an N-type device with a nanowire channel, the intermediatestorage node is coupled to the P-type device and the N-type device, andthe second voltage is lower than the first voltage.

An integrated circuit can be manufactured with the improved design.

In a manufacturing process, or in the field, an integrated circuitimplemented according to the improved integrated circuit design can takeadvantage of the added circuitry configured to perform a repair processon a nanowire channel of a transistor in a memory cell. In one example,a memory cell can be determined that has a read current below a passingcriteria, where the memory cell has a transistor with a nanowire channelon a current path through which the read current flows. A stress can beapplied on the memory cell to repair the nanowire channel of thetransistor in the memory cell on the current path. Determining thememory cell can include sensing read currents of memory cells in anarray of memory cells, where the memory cells have transistors withnanowire channels on current paths through which the read currents flow,and determining one or more memory cells in the array of memory cellshaving read currents below the passing criteria, using the read currentssensed. Addresses of the determined one or more memory cells having readcurrents below the passing criteria can be stored, for identifyingmemory cells having transistors with nanowire channels that needrepairing.

Applying the stress can induce self-heating in the memory cell, theself-heating causing diffusion into the nanowire channel of source anddrain dopants of the transistor on the current path in the memory cell.Applying the stress can cause an increase in the read current throughthe current path including the nanowire channel of the transistor.

Static leakage current of the integrated circuit can be measured, and itcan be determined that the static leakage current of the integratedcircuit is below a leakage limit of the integrated circuit before thestress is applied on the memory cell.

A second memory cell can be determined that has a second read currentbelow a passing criteria, where the second memory cell has a secondtransistor with a nanowire channel on a current path through which thesecond read current flows. It can be determined whether the staticleakage current of the integrated circuit is below a leakage limit ofthe integrated circuit. Only if so, a stress can be applied on thesecond memory cell to repair the nanowire channel of the secondtransistor in the second memory cell on the second current path.

Applying the stress on the memory cell can be repeated, until the readcurrent is not below the passing criteria, each repetition of saidapplying the stress doing so for an increased duration than the previousoccurrence of said applying the stress.

Particular aspects of the present technology are described in theclaims, specification and drawings.

BRIEF DESCRIPTION OF THE FIGURES

The present invention is illustrated by way of example, and not by wayof limitation, in the figures of the accompanying drawings and in whichlike reference numerals refer to similar elements and in which:

FIG. 1 is a representation of a normal distribution of the on-statetransistor current (Ion) of the transistors on the chip.

FIG. 2 is a representation of two normal distributions of the on-statetransistor current (Ion) for two different technologies.

FIG. 3 is a representation of the cross section of a Gate-All-Around(GAA) nano-wire (NW) transistor before and after the repair.

FIG. 4 is a representation of the distribution of transistor's on-statecurrent before and after device repair.

FIGS. 5A and 5B are tables showing circuit path timing, referred to inorder to illustrate how to identify a critical path.

FIG. 6 is an example flow chart for identifying in the logic circuitry arepairable path which has a negative timing slack, and applying a stresson a particular device having a transistor with a nanowire channel inthe repairable path to change the timing slack of the repairable.

FIG. 7 is a representation of logic circuitry including a particulardevice in a critical path.

FIG. 8 illustrates a repair circuit connected to a particular device ina critical path.

FIG. 9 illustrates multiple repair circuits connected to circuitryblocks including circuitry blocks having critical paths.

FIG. 10 illustrates a simplified representation of an illustrativeintegrated circuit design flow.

FIG. 11 is an example flow chart for repairing memory cells havingtransistors with nanowire channels on an integrated circuit.

FIG. 12 is an example flow chart for applying a stress on a memory cellto repair a nanowire channel of a transistor in the memory cell.

FIG. 13 illustrates an example transistor level schematic for a 6T-SRAMcell, reflecting a procedure to repair N-type nanowire devices in a6T-SRAM cell.

FIG. 14 illustrates an example transistor level schematic for a 6T-SRAMcell, reflecting a procedure to repair P-type nanowire devices in a6T-SRAM cell.

FIGS. 15A, 15B and 15C are simplified block diagrams of a computersystem suitable for use with embodiments of the present technology, aswell as repair circuit embodiments of the technology.

FIG. 16 illustrates an example of an apparatus comprising logic torepair memory cells having transistors with nanowire channels on anintegrated circuit.

DETAILED DESCRIPTION

The following detailed description is made with reference to thefigures. Preferred embodiments are described to illustrate the presenttechnology, not to limit its scope, which is defined by the claims.Those of ordinary skill in the art will recognize a variety ofequivalent variations on the description that follows.

FIG. 1 is a representation of a normal distribution of the on-statetransistor current (Ion) of the transistors on a chip. The minus 3σcut-off point represents the value of Ion below which the device willnot meet the passing criteria for use in a design. This is reflected inthe design practice of simulating circuits in a range of +/−3σ for thekey device performance metrics to establish the acceptable designtarget.

FIG. 2 is a representation of two normal distributions of the on-statetransistor current (Ion) for two different technologies A and B.Technology A has a lower mean value of Ion but a tighter variabilitydistribution than technology B that has a higher mean value of Ion butalso has a wider variability distribution.

I(A) represents the −3σ Ion that is the minimum acceptable value of Ionfor a particular design performance. The shaded area under thedistribution for technology B between P(A)/I(A) and P(B)/I(B) representwasted yield due to the wider distribution of technology B.

Technology B, with a higher mean value of Ion indicates a capability ofhigher overall performance, yet the higher variability translates to aworse performance than A for the typical nominal −3σ Ion circuit designtarget. The design tools, manufacturing methods and circuits describedherein address this problem.

FIG. 3 is a cross section representation of a Gate All Around (GAA)nanowire transistor with a channel length L1 with the standard source,drain, and gate configuration. This is one example of a transistor witha nanowire channel which can be part of a critical path in a logiccircuit design. In the illustration, the “upper” and “lower” gates arein reality a single gate wrapped around the channel between the sourceand the drain.

The GAA nanowire transistor with channel length L2 represents thetransistor of channel L1 after a higher VDD is applied to it for aperiod of time. The self-heating can be applied to a device on the lowIon tail of the distribution, where the self-heating of the transistorcauses the source and drain dopants to diffuse further into the channelresulting in L2 smaller than L1. With a shorter effective channellength, the on-resistance of the transistor is reduced and theon-current Ion can be higher. This results in the probability curve forthe transistor being repaired to shift, so that the left 3σ portion ofthe Ion distribution curve of the transistors shown in FIGS. 1 and 2shifts to the right and narrows the distribution as shown in FIG. 4,whenever selected slower transistors go through a self-heating repairstep.

FIG. 4 is a representation of the distribution of transistor's on-statecurrent before and after device repair on a GAA transistor for thatparticular device and technology. FIG. 4 shows a case where the stressVDD level and duration results in shifting the curve for the stressedtransistors by a full 3σ, essentially eliminating in full the left 3σportion of the distribution curve. The asymmetry of the curve is anindication that the stress is applied only to devices with Ion less thanthe mean. It is also important to indicate that the stress level neednot be that extreme. Any amount of shift to the right is a net gain inperformance and in yield.

Improving the performance of a device through stress/self-heating whichreduces the effective channel length can have an undesired consequenceof higher static leakage in an integrated circuit. Thus in a process toapply a stress to repair a device on the integrated circuit, the staticleakage of the integrated can be first measured. If the static leakageof the integrated circuit is below a leakage limit of the integratedcircuit, then a stress can be applied to a device having a transistorwith a nanowire channel in a critical path to change the timing slack ofthe critical path. Otherwise the static leakage of the integratedcircuit is at or exceeding the leakage limit, and a stress may not beapplied to a device having a transistor with a nanowire channel in acritical path.

FIGS. 5A and 5B are tables showing circuit path timing, referred to inorder to illustrate how to identify a critical path.

FIG. 5A shows paths 1 to n, having starting devices in the secondcolumn, ending devices in the third column, and picosecond scale timingslack measurements on the paths in the fourth column. The maximum clockfrequency of a logic circuit is governed by the register to registerdelay which usually includes a critical path. The paths are betweenstarting registers and ending registers that operate on a same clocksignal. The slacks refer to the timing differences between register toregister delays relative to a time period required to operate with atarget clock frequency of the clock signal.

The slacks can be positive slacks or negative slacks. A positive slackindicates that the cumulative delay through circuit elements betweenregisters is less than the period, and therefore will not limit theclock frequency to below the target clock frequency. A negative slackindicates that the cumulative delay through circuit elements betweenregisters is greater than the period, and therefore the target clockfrequency cannot be met with a negative slack.

In this example, the slacks are calculated relative to a target clockfrequency of 1 GHz corresponding to a period of 1 ns between registers.For instance, Path 1 starts at a first node DF11:CLK, ends at a secondnode O11, and has a slack of −33 ps; Path 2 starts at a first nodeA2:CLK, ends at a second node O23, and has a slack of −24 ps; Path 3starts at a first node DF23:CLK, ends at a second node O11, and has aslack of −12 ps; . . . and Path n starts at a first node DF12:CLK, endsat a second node O7, and has a slack of 29 ps.

A critical path can be a path that has the worst negative slack ascompared to the slacks of other paths between registers operating on thesame clock signal. For instance, among the example paths, the criticalpath can be Path 1 with a slack of negative 33 ps.

FIG. 5B shows breakdown of the example critical path Path 1. In thisexample, the critical path includes a cumulative delay of 45 ps from aclock input of a register (e.g. DF11:CLK) to a first intermediate nodeint1 at an output of the register (e.g. DF11:q). The cumulative delayincreases to 189 ps at a second intermediate node int 2 at an output ofa combinational gate (e.g. OR2D1:Z) on the critical path. The cumulativedelay increases to 1033 ps at a third intermediate node int 3 at anoutput of another combinational gate (e.g. XOR:Z) on the critical path.Since the target clock frequency is 1 GHz, corresponding to a period of1 ns between registers, the cumulative delay of 1033 ps is 33 ps slowerthan the period of 1 ns, and accordingly the slack is negative 33 ns.

FIG. 6 is an example flow chart for identifying in the logic circuitry arepairable path which has a negative timing slack, and applying a stresson a particular device having a transistor with a nanowire channel inthe repairable path to change the timing slack of the repairable path.Steps described in FIG. 6 can be implemented using an apparatus such asdescribed in connection with FIG. 16.

At Step 601, speed of a repairable path in the logic circuitry issensed, where the repairable path includes a particular device having atransistor with a nanowire channel. Speed of a repairable path in thelogic circuitry can be sensed during manufacturing using a semiconductortest system (e.g. 1610, FIG. 16) before packaging, such as in wafer formin some embodiments, or in a packaged form in other embodiments.Alternatively, an integrated circuit can include built-in circuits tosense speed of a repairable path in the logic circuitry on theintegrated circuit.

At Step 602, the static leakage current of the integrated circuit or apart of the integrated circuit is measured. Before applying the stressat Step 605, the static leakage current is determined as below a leakagelimit. This is because improving the performance of a device throughstress/self-heating can have the undesired consequence of higher staticleakage current for an integrated circuit. Thus the application ofstress is administered selectively when the static leakage current ofthe integrated circuit is below a leakage limit of the integratedcircuit or a part of the integrated circuit.

At Step 603, a timing slack of the repairable path is calculated, usingthe speed sensed for the repairable path based on measurements.

At Step 604, it is determined if the calculated timing slack isnegative. If the calculated timing slack is negative, the flow forrepairing logic circuitry can proceed to Step 605, otherwise the flowcan stop.

At Step 605, a stress is applied on a particular device having atransistor with a nanowire channel in the repairable path with thenegative timing slack to change the timing slack of the repairable path.Applying the stress can induce self-heating in the particular device.The self-heating can cause diffusion into the nanowire channels ofsource and drain dopants of the particular device.

The flow can repeat Step 605 on the repairable path, until the timingslack of the repairable path is not negative, each repetition of saidapplying the stress doing so for an increased duration than the previousoccurrence of said applying the stress (Step 604→Yes), or the staticleakage current of the integrated circuit is no longer below a leakagelimit of the integrated circuit (Step 602→No). In an alternativeembodiment, Steps 601-605 can be repeated on a different transistor witha nanowire channel in the same repairable path, until either thecalculated timing slack is not negative (Step 604→Yes), or the staticleakage current of the integrated circuit is no longer below a leakagelimit of the integrated circuit (Step 602→No). In an embodiment, theperformance of each cell being repaired is re-measured (sensed) againafter an increment of repair heating time, and the repair is repeated ifstill needed. The process can be repeated until the target performanceis achieved. In a different embodiment, Step 602 for checking staticleakage current could be performed after Step 603 for calculating atiming slack, but before Step 605 for applying the stress.

The flow described in FIG. 6 can be applied to multiple repairablepaths, until either the static leakage current of the integrated circuitis no longer below a leakage limit of the integrated circuit (Step602→No), or there are no more remaining repairable paths with negativetiming slacks (Step 604→Yes).

In one embodiment, the flow can repair only one repairable path with anegative timing slack that stands in the way for the whole integratedcircuit to achieve a higher frequency. In an alternative embodiment, theflow can repair a few repairable paths with negative timing slacks thatstand in the way for the whole integrated circuit to achieve a higherfrequency. In yet other embodiments, the flow can repair all repairablepaths with negative timing slacks in an integrated circuit.

FIG. 7 is a logic diagram of an embodiment of a circuit for whichselective application of stress can be deployed to enhance systemperformance of an integrated circuit design. The performance of thecircuit is determined by the slower of the multiple paths from the Qoutput of each of registers REG1 and REG2 to the D input of each ofregisters REG3 and REG4.

For instance, a path from register REG2 to register REG4 including theNOR2 gate is the slower of the multiple paths. The NOR2 gate is targetedfor stress to enhance its speed resulting in a faster path from registerREG2 to register REG4 improving the performance of the whole circuit.The NOR2 gate is connected to two input signals (e.g. 711, 712) and anoutput signal (e.g. 713).

FIG. 8 illustrates a repair circuit connected to a particular device ina critical path. As shown in the example of FIG. 8, a repair circuit(e.g. 820) is connected to a particular device (e.g. NOR2) in a criticalpath (e.g. from REG2 to REG4, FIG. 7). The repair circuit when activatedcan apply a self-heating stress to the particular device in the criticalpath. The repair circuit 820 can include a selection block that selectsamong a plurality of signals including a repair signal (e.g. 812) and anoperational logic signal (e.g. 712, FIG. 7) as an input signal to theparticular device NOR2, and provides an output signal (e.g. 813). Therepair signal is such as to apply the self-heating stress to thenanowire channel of the particular device when activated. The particulardevice NOR2 is connected to a first input signal (e.g. 711, FIG. 7), asecond input signal (e.g. 813), and an output signal (e.g. 713, FIG. 7).

In one embodiment, the integrated circuit can include a two level powersupply. The two level power supply has a normal VDD output for normalchip operation, and also a VDDR output, which has a higher voltage thanthe VDD output, available for stressing desired transistors havingnanowire channels for the purposes of repairing the transistors. Aswitch 802 is provided which normally connects VDD to all of thecircuitry blocks. But when a Master Repair Enable signal 803 isasserted, the switch 802 instead connects VDDR to a gate (e.g. NOR2) ina critical path that needs repairing, via power supply distributionlines (e.g. 804, FIG. 8). In an alternative embodiment, a single levelpower supply can be used instead of a two level power supply, to providea supply voltage to the particular device in applying a stress to theparticular device, where the supply voltage is also applied to theparticular device in normal logic operation.

The repair signal can be a time varying signal causing the particulardevice to switch repeatedly while powered by the second supply voltageof a two level power supply or by the supply voltage of a single levelpower supply, at a rate or rates sufficient to induce the self-heatingstress to the nanowire channel of the particular device.

FIG. 9 illustrates multiple repair circuits connected to circuitryblocks including circuitry blocks having repairable paths. In general,the circuitry on-chip can be organized into circuitry blocks, some ofwhich contain transistors in a repairable path and others not. In FIG.9, for example, circuitry blocks A and C contain repairable pathcircuitry whereas circuitry block B does not. A two level power supply901 is provided, which has a normal VDD output for normal chipoperation, and also a VDDR output, which has a higher voltage than theVDD output, available for stressing desired transistors having nanowirechannels for the purposes of repairing the transistors.

A switch 902 is provided which normally connects VDD to all of thecircuitry blocks. But when a Master Repair Enable signal 903 isasserted, the switch 902 instead connects VDDR to the power supplydistribution lines 904. Each circuitry block has an input logic signalin response to which it generates its output(s), e.g. OA, OB and OC forcircuitry blocks A, B and C respectively. Only one input and one outputare shown, but it will be appreciated that each circuitry block can havenumerous inputs and numerous outputs. The input logic signal for each ofthe circuitry blocks is connected to the output of a respectiveselection block (e.g. 911, 912, 913). The selection block for each ofthe circuitry blocks A and C, which do have repairable path circuitry,has one input carrying the operational logic signal for the circuitryblock, and a second input carrying a time varying signal such as asquare wave signal. In an embodiment, the square wave signal holdssteady at one logic value unless the Master Repair Enable signal isasserted. The “operational logic signal” is a signal from upstreamcircuitry (not shown) which is used in normal chip operation. Forcircuitry block B, which does not have a repairable path, the selectionblock (e.g. 912) has one input carrying the operational logic signal andthe second input carrying a fixed or steady logic signal such as ‘0’.Each selection block also has a Block x Repair enable signal which isasserted by a controller (e.g. 920) for each block x to be repaired,where ‘x’ refers to ‘A’, ‘B’ or ‘C’ as in Block A, Block B or Block C.In one embodiment the block repair enable signals are asserted one at atime, whereas in another embodiment two or more of them can be assertedconcurrently.

In normal operation, the Master Repair Enable signal 903 is notasserted, all of the circuitry blocks are powered with VDD, and all ofthe selection blocks are set to select their operational logic signalsto their respective circuitry blocks. At repair time, the Master RepairEnable signal 903 is asserted, causing all of the circuitry blocks to bepowered by the higher repair voltage VDDR. This does not by itself causesignificant repair heating, since a transistor is heated significantlyonly while current flows through it. In logic circuitry, significantcurrent flows only while the circuitry is in the process of switching.Thus to cause heating of repairable transistors in the repairable path,the embodiment of FIG. 9 replaces the operational logic signal for eachdesired circuitry block with a time varying repair signal so as to causethe transistors in the repairable path to switch repeatedly. This isaccomplished by asserting the Block x Repair enable signal for eachdesired circuitry block x, thereby passing the time varying repairsignal to the input logic port of the circuitry block while thecircuitry block is being powered by VDDR. For circuitry blocks not inthe repairable path, the corresponding Block Repair signal is assertedso as to force the circuitry block to receive only the steady signal.Alternatively, the corresponding Block Repair signal is never asserted(and/or the selection block is omitted entirely), and upstream logickeeps the corresponding operational logic signal steady while the MasterRepair Enable signal is asserted. After repairs are complete, none ofthe Block x Repair enable signals remain asserted, so that onlyoperational logic signals are passed to the circuitry blocks. The MasterRepair Enable signal also is de-asserted, so that all of the circuitryblocks are again powered by standard VDD. The integrated circuit caninclude a signal source 930 to generate the repair signal as a timevarying signal causing the transistors in the repairable path to switchrepeatedly, at a rate or rates sufficient to induce the self-heatingstress to the nanowire channels of the transistors in the repairablepath.

In another embodiment, both VDD and VDDR can be provided to all of thecircuitry blocks (or all the circuitry blocks that have repairable pathcircuitry), and a separate power supply switch is provided for each ofthe circuitry blocks. Only the circuitry blocks that are being repairedhave their power supply switches set to apply the repair voltage VDDR.

FIG. 10 illustrates a simplified representation of an illustrativeintegrated circuit design flow. As with all flowcharts herein, it willbe appreciated that many of the steps of FIG. 10 can be combined,performed in parallel or performed in a different sequence withoutaffecting the functions achieved. In some cases a rearrangement of stepswill achieve the same results only if certain other changes are made aswell, and in other cases a rearrangement of steps will achieve the sameresults only if certain conditions are satisfied.

At a high level, the process of FIG. 10 starts with the product idea(block 1000) and is realized in an EDA (Electronic Design Automation)design process (block 1010) which is improved by the technologydescribed herein. When the design is finalized, the fabrication process(block 1050) and packaging and assembly processes (block 1060) occur,ultimately resulting in finished integrated circuit chips (result 1070).

The EDA design process (block 1010) is actually composed of a number ofsteps 1012-1030, shown in linear fashion for simplicity. In an actualintegrated circuit design process, the particular design might have togo back through steps until certain tests are passed. Similarly, in anyactual design process, these steps may occur in different orders andcombinations. This description is therefore provided by way of contextand general explanation rather than as a specific, or recommended,design flow for a particular integrated circuit.

A brief description of the component steps of the EDA design process(block 1010) will now be provided.

System design (block 1012): The designers describe the functionalitythat they want to implement; they can perform what-if planning to refinefunctionality; check costs; etc. Hardware-software architectureselection can occur at this stage. Example EDA products that have beenavailable from Synopsys, Inc. that could be used at this step includeModel Architect, Saber, System Studio, and DesignWare® products.

Logic design and functional verification (block 1014): At this stage,high level description language (HDL) code, such as the VHDL or Verilogcode, for modules in the system is written and the design is checked forfunctional accuracy. More specifically, the design is checked to ensurethat it produces the correct outputs in response to particular inputstimuli. Example EDA products that have been available from Synopsys,Inc. that could be used at this step include VCS, VERA, DesignWare®,Magellan, Formality, ESP and LEDA products.

Synthesis and design for test (block 1016): Here, the VHDL/Verilog istranslated to a netlist. The netlist can be optimized for the targettechnology. Additionally, the design and implementation of tests topermit checking of the finished chip occur. Example EDA products thathave been available from Synopsys, Inc. that could be used at this stepinclude Design Compiler®, Physical Compiler, Test Compiler, PowerComplier, FPGA Compiler, TetraMAX, and DesignWare® products.Optimization of design for use of nanowire cells as described herein canoccur in this stage.

Netlist verification (block 1018): At this step, the netlist is checkedfor compliance with timing constraints and for correspondence with theVHDL/Verilog source code. Example EDA products that have been availablefrom Synopsys, Inc. that could be used at this step include Formality,PrimeTime, and VCS products.

Design planning (block 1020): Here, an overall floor plan for the chipis constructed and analyzed for timing and top-level routing. ExampleEDA products that have been available from Synopsys, Inc. that could beused at this step include Astro and IC Compiler products. Nanowire basedcell selection, layout and optimization can occur at this stage.

Physical implementation (block 1022): The placement (positioning ofcircuit elements) and routing (connection of the same) occurs at thisstep. Example EDA products that have been available from Synopsys, Inc.that could be used at this step include AstroRail, Primetime, and StarRC/XT products. Nanowire based cell layout, mapping and interconnectarrangements can be implemented or optimized at this stage, using forexample nanowire cells based on nanowire cell layouts and structuresdescribed herein.

Analysis and extraction (block 1024): At this step, the circuit functionis verified at a transistor level; this in turn permits what-ifrefinement. Example EDA products that have been available from Synopsys,Inc. that could be used at this stage include Custom Designer,AstroRail, PrimeRail, Primetime, and Star RC/XT products.

In accordance with the technology described herein, to add repaircircuits in an integrated circuit design including logic circuitry withdevices having transistors with nanowire channels, a critical path inthe integrated circuit design can be determined (block 1024), where thecritical path includes a particular device having a transistor with ananowire channel (block 1022). If the critical path does not meet atiming specification, then a repair circuit (or a plurality of repaircircuits) as discussed above can be added to the integrated circuitdesign connected to the particular device in the critical path. (block1023). The repair circuit when activated can apply a self-heating stressto the particular device in the critical path.

At this stage (block 1023), the EDA design process can add to theintegrated circuit design a two level power supply which provides afirst supply voltage and a second supply voltage higher than the firstsupply voltage. The EDA design process can add to the integrated circuitdesign a controller configured to provide the second supply voltage tothe particular device while selecting the repair signal as the inputsignal to the particular device via the selection block, and to providethe first supply voltage to the particular device while selecting theoperational logic signal as the input signal to the particular devicevia the selection block.

At this stage (block 1023), the EDA design process can also add a signalsource to the integrated circuit design to generate the repair signal asa time varying signal causing the particular device to switch repeatedlywhile powered by the second supply voltage of a two level power supplyor by the supply voltage of a single level power supply, at a rate orrates sufficient to induce the self-heating stress to the nanowirechannel of the particular device.

Physical verification (block 1026): At this stage various checkingfunctions are performed to ensure correctness for: manufacturing,electrical issues, lithographic issues, and circuitry. Example EDAproducts that have been available from Synopsys, Inc. that could be usedat this stage include the Hercules product.

Tape-out (block 1027): This stage provides the “tape-out” data forproduction of masks for lithographic use to produce finished chips.Example EDA products that have been available from Synopsys, Inc. thatcould be used at this stage include the CATS® family of products.

Resolution enhancement (block 1028): This stage involves geometricmanipulations of the layout to improve manufacturability of the design.Example EDA products that have been available from Synopsys, Inc. thatcould be used at this stage include Proteus/Progen, ProteusAF, andPSMGen products.

Mask preparation (block 1030): This stage includes both mask datapreparation and the writing of the masks themselves. Example EDAproducts that have been available from Synopsys, Inc. that could be usedat this stage include CATS® family of products.

Embodiments of the nanowire based technologies described herein can beused during one or more of the above-described stages, including forexample one or more of stages 1016 through 1022 and 1030. Also, nanowirecell technology provide flexibility that enables the implementation ofengineering change orders ECOs, including modification of the cell sizesduring design verification stages.

FIG. 11 is an example flow chart for repairing memory cells havingtransistors with nanowire channels on an integrated circuit. Stepsdescribed in FIG. 11 can be implemented using an apparatus such asdescribed in connection with FIG. 16.

At Step 1101, read currents of memory cells in an array of memory cellsare sensed, where the memory cells have transistors with nanowirechannels on current paths through which the read currents flow. One ormore memory cells in the array of memory cells can be determined thathave read currents below a passing criteria, using the read currentssensed. Read currents of memory cells in an array memory cells can besensed during manufacturing using a semiconductor test system (e.g.1610, FIG. 16) before packaging, such as in wafer form in someembodiments, or in a packaged form in other embodiments. Alternatively,an integrated circuit can include built-in circuits to sense readcurrents of memory cells on the integrated circuit.

At Step 1102, static leakage current of the integrated circuit or a partof the integrated circuit is measured. If the static leakage current isbelow a leakage limit, then the flow for repairing memory cells canproceed to Step 1103, otherwise the flow can stop. This is becauseimproving the performance of a device through stress/self-heating canhave the undesired consequence of higher static leakage current for anintegrated circuit. Thus the application of stress is administeredselectively when the static leakage current of the integrated circuit isbelow a leakage limit of the integrated circuit or a part of theintegrated circuit.

At Step 1103, addresses of the memory cells whose read currents aresensed can be stored, for example for identifying memory cells havingtransistors with nanowire channels that need repairing. In oneembodiment, addresses of the determined one or more memory cells havingread currents below the passing criteria can be stored. Furthermore,respective currents of the determined one or more memory cells can bestored along with their addresses. In an alternative embodiment,addresses of all memory cells in the array of memory cells and theirrespective currents can be stored.

At Step 1104, it is determined whether read currents in all memory cellsin an array of memory cells have passed the passing criteria. If yes,the flow can stop. If not, the flow can proceed to Step 1105 to repair amemory cell whose read current has not passed the passing criteria.

At Step 1105, a stress can be applied on a memory cell having a readcurrent below the passing criteria to repair the nanowire channel of thetransistor in the memory cell on the current path through which the readcurrent flows. Applying the stress can induce self-heating in the memorycell. The self-heating can cause diffusion into the nanowire channels ofsource and drain dopants of the transistor on the current path in thememory cell.

After Step 1105, the flow can repeat Steps 1101-1105, using anincremented time duration for applying the stress, until either the readcurrent is not below the passing criteria (Step 1104→Yes), or the staticleakage current of the integrated circuit is no longer below a leakagelimit of the integrated circuit (Step 1102→No). Steps 1101-1105 can berepeated on a different transistor with a nanowire channel in the samememory cell. In an embodiment, the performance of each memory cell beingrepaired is re-measured (sensed) again after an increment of repairheating time, and the repair is repeated if still needed. The processcan be repeated until the target performance is achieved. In a differentembodiment, Step 1102 for checking static leakage current could beperformed after Step 1103 for storing addresses of the memory cellswhose read currents are sensed, but before Step 1105 for applying thestress.

The flow described in FIG. 11 can be applied to multiple memory cells,until either the static leakage current of the integrated circuit is nolonger below a leakage limit of the integrated circuit (Step 1102→No),or there are no more remaining memory cells with read currents below thepassing criteria (Step 1104→Yes).

In one embodiment, the flow can repair only one memory cell having aread current below the passing criteria that stands in the way for thewhole integrated circuit to achieve a higher frequency. In analternative embodiment, the flow can repair a few memory cells havingread currents below the passing criteria that stand in the way for thewhole integrated circuit to achieve a higher frequency. In yet otherembodiments, the flow can repair all memory cells having read currentsbelow the passing criteria in an integrated circuit.

FIG. 12 is an example flow chart for applying a stress on a memory cellto repair a nanowire channel of a transistor in the memory cell. FIG. 12further illustrates Step 1105 in FIG. 11.

A current path as described herein (e.g., 1330, FIG. 13; 1430, FIG. 14)includes an intermediate storage node (e.g. Q_(L), FIGS. 13 and 14) inthe memory cell and a bit line (e.g. BL, FIGS. 13 and 14) connected tothe memory cell. At Step 1210, the intermediate storage node can beprogrammed to a first voltage during a time period. At Step 1220, a wordline (e.g. WL, FIGS. 13 and 14) connected to the memory cell can beenabled, after the intermediate storage node is programmed to the firstvoltage. At Step 1230, a second voltage can be applied on the bit linefor a duration longer than the time period, the second voltage inducinga repair current to flow through the current path for inducingself-heating the transistor on the current path.

In one instance, the transistor is a first N-type device, the memorycell includes a second N-type device with a nanowire channel, theintermediate storage node (e.g. Q_(L), FIG. 13) is coupled to the firstand second N-type devices (e.g. PG_(L) and PD_(L), FIG. 13), and thefirst voltage corresponds to a low data value. In one embodiment, thememory cell is powered with a supply voltage (e.g. VDD, FIG. 13), andthe second voltage is higher than the supply voltage. A precharge device(e.g. 1340, FIG. 13) can be connected to the bit line (e.g. BL, FIG. 13)for precharging the bit line when sensing a read current of the memorycell connected to the bit line, and the second voltage (e.g. VDDL, FIG.13) is lower than a sum of the supply voltage and a threshold voltage ofthe precharge device. In another embodiment, the memory cell is poweredwith a supply voltage, and the second voltage is substantially equal tothe supply voltage. As used herein, the term “substantially” is intendedto accommodate manufacturing tolerances.

In another instance, the transistor is a P-type device (e.g. PU_(L),FIG. 14), the memory cell includes an N-type device with a nanowirechannel (e.g. PG_(L), FIG. 14), the intermediate storage node (e.g.Q_(L), FIG. 14) is coupled to the P-type device and the N-type device,the first voltage corresponds to a high data value, and the secondvoltage is lower than the first voltage.

FIG. 13 illustrates an example transistor level schematic for a 6T-SRAM(6 transistors-static random access memory) cell, reflecting a procedureto repair N-type nanowire devices in a 6T-SRAM cell weakened by agingsuch as NBTI or simply if strengthening the N-type devices is desired.An SRAM cell as referred to in the present specification is a memorycell that does not need to be periodically refreshed to retain storeddata. An SRAM cell as referred to in the present specification is amemory cell utilizing sets of nanowires as the channel structure fortransistors.

As illustrated in the example of FIG. 13, an SRAM cell 1300 uses a pairof cross-coupled inverters as a storage element to store a single bit ofdata. The pair includes a first inverter configured with an N-typepull-down transistor PD_(L) and a P-type pull-up transistor PU_(L), anda second inverter configured with a an N-type pull-down transistorPD_(R) and a P-type pull-up transistor PU_(R). The first inverter has afirst intermediate storage node Q_(L) acting as an output of the firstinverter. The output of the first inverter is connected to a gateconductor of the second inverter (e.g. 1320), at which an input signalto the second inverter is applied. The second inverter has a secondintermediate storage node Q_(R) acting as an output of the secondinverter. The output of the second inverter is connected to a gateconductor of the first inverter (e.g. 1310), at which an input signal tothe first inverter is applied. The SRAM cell includes N-type pass gatesPG_(L) and PG_(R) as access devices to provide a switchable data pathfor data into and out of the SRAM cell. A word line (WL) controls theSRAM cell for reading or writing. Complementary bit lines BL and BLBprovide the data path to the pass gates PG_(L) and PG_(R).

Sources S of the pull-up transistors PU_(L) and PU_(R) are connected tothe SRAM cell supply voltage (e.g. VDD), while sources of the pull-downtransistors PD_(L) and PD_(R) are connected to the SRAM cell groundvoltage (e.g. GND). Drains of the pull-up transistor PU_(L) andpull-down transistor PD_(L) are connected together at the firstintermediate storage node Q_(L) of the first inverter. The pass gatePG_(L) is connected between the first intermediate storage node Q_(L) ofthe first inverter and the bit line BL. A gate terminal of the pass gatePG_(L) is connected to the word line WL. Drains of the pull-uptransistor PU_(R) and pull-down transistor PD_(R) are connected togetherat the second intermediate storage node Q_(R) of the second inverter.The pass gate PG_(R) is connected between the second intermediatestorage node Q_(R) of the second inverter and the bit line BLB. A gateterminal of the pass gate PG_(R) is connected to the word line WL.

A precharge device (e.g. 1340) controls applying the supply voltage(e.g. VDD) on the bit line BL for read operations. A buffer or levelshifter (e.g. 1344) connects a data input signal (e.g. DI) through amultiplexer (e.g. 1342) to the bit line BL. The buffer has anindependent power supply (e.g. VDDL) which can be controlled to providea second voltage for repairing the N-type devices connected to the bitline BL. The second voltage can be higher than the supply voltage VDD,and lower than a sum of the supply voltage (e.g. VDD) and a thresholdvoltage of the precharge device 1340.

Similarly, a precharge device (e.g. 1350) controls applying the supplyvoltage (e.g. VDD) on a complementary bit line BLB for read operations.A buffer or level shifter (e.g. 1354) connects a data input signal (e.g.DIB) through a multiplexer (e.g. 1352) to the bit line BLB. The bufferhas an independent power supply (e.g. VDDL) which can be controlled toprovide a second voltage for repairing the N-type devices connected tothe bit line BLB. The second voltage can be higher than the supplyvoltage VDD, and lower than a sum of the supply voltage (e.g. VDD) and athreshold voltage of the precharge device 1350.

For the simplified description below about the read and write operationsof an SRAM cell, it is assumed that a high data value “1” stored in theSRAM cell corresponds to a state when the first intermediate storageQ_(L) of the first inverter is at a high data value “1” and the secondintermediate storage node Q_(R) of the second inverter is at a low datavalue “0”. At the beginning of a read or write operation, the word lineWL selects the SRAM cell by turning on the pass gates PG_(L) and PG_(R).At the end of the read or write operation, the word line WL deselectsthe SRAM cell by turning off the pass gates PG_(L) and PG_(R).

In a write operation, a voltage corresponding to a low data value “0” isapplied to one of BL and BLB, while a voltage corresponding to a highdata value “1” is applied to another of BL and BLB, to change the stateof the storage element. For instance, to write a high data value, avoltage corresponding to a high data value is applied to the bit lineBL, while a voltage corresponding to a low data value is applied to thebit line BLB. To write a low data value, a voltage corresponding to alow data value is applied to the bit line BL, while a voltagecorresponding to a high data value is applied to the bit line BLB.

When a high data value is stored in the SRAM cell, in the firstinverter, the pull-down transistor PD_(L) is turned off and the pull-uptransistor PU_(L) is turned on so that the first intermediate storagenode Q_(L) exhibits a high data value while, in the second inverter, thepull-down transistor PD_(R) is turned on and the pull-up transistorPU_(R) is turned off so that the second intermediate storage node Q_(R)exhibits a low data value. When a low data value is stored in the SRAMcell, in the first inverter, the pull-down transistor PD_(L) is turnedon and the pull-up transistor PU_(L) is turned off so that the firstintermediate storage node Q_(L) exhibits a low data value while, in thesecond inverter, the pull-down transistor PD_(R) is turned off and thepull-up transistor PU_(R) is turned on so that the second intermediatestorage node Q_(R) exhibits a high data value.

In a read operation, the bit lines BL and BLB are precharged to avoltage level corresponding to a high data value “1” (e.g. VDD), and theSRAM cell is selected by the word line WL. If a high data value “1” isstored in the SRAM cell, current flows through the pass gate PG_(R) andthe pull-down transistor PD_(R) to ground, and through the pull-uptransistor PU_(L) and the pass gate PG_(L) to the bit line BL. If a lowdata value “0” is stored in the SRAM cell, current flows through thepull-up transistor PU_(R) and the pass gate PG_(R) to the bit line BLB,and through the pass gate PG_(L) and the pull-down transistor PD_(L) toground.

As shown in the example of FIG. 13, the two N-type devices (e.g. passgate PG_(L) and pull-down transistor PD_(L)) on the current path 1330can be repaired by programming the first intermediate node Q_(L) to afirst voltage during a time period, then enabling the word line WLconnected to the memory cell, and stressing the bit line BL to a secondvoltage for a duration longer than the time period. The second voltagecan induce a current to flow through the current path 1330 forself-heating the two N-type devices (e.g. PG_(L) and PD_(L)). The secondvoltage can be higher than the supply voltage VDD, and lower than a sumof the supply voltage (e.g. VDD) and a threshold voltage of theprecharge device 1340. A voltage difference between the first voltageand the second voltage can ensure that a stress current flowing throughthe current path 1330 is strong enough to induce self-heating forrepairing the N-type devices (e.g. PG_(L) and PD_(L)).

Similarly, the two N-type devices (e.g. pass gate PG_(R) and pull-downtransistor PD_(R)) on the current path 1335 can be repaired byprogramming the second intermediate node Q_(R) to a first voltage duringa time period, then enabling the word line WL connected to the memorycell, and stressing the bit line BL to a second voltage for a durationlonger than the time period. The second voltage can induce a current toflow through the current path 1335 for inducing self-heating the twoN-type devices (e.g. PG_(R) and PD_(R)). The second voltage can behigher than the supply voltage VDD, and lower than a sum of the supplyvoltage (e.g. VDD) and a threshold voltage of the precharge device 1350.A voltage difference between the first voltage and the second voltagecan ensure that a stress current flowing through the current path 1335is strong enough to induce self-heating for repairing the N-type devices(e.g. PG_(R) and PD_(R)).

A procedure to characterize the read current of every memory cell of anSRAM array may be used first to determine the I-Read distribution anddetermine the memory cells including devices having nanowire channelsthat need repairing.

FIG. 14 illustrates an example transistor level schematic for a 6T-SRAMcell, reflecting a procedure to repair P-type nanowire devices in a6T-SRAM cell weakened by aging such as NBTI or simply if strengtheningthe P devices is desired. Description of the structure of a 6T-SRAM inconnection to FIG. 13 is applicable to FIG. 14, and is not repeated forFIG. 14.

As shown in the example of FIG. 14, a P-type device (e.g. pull-uptransistor PU_(L)) on the current path 1430 can be repaired by writing ahigh data value “1” at the first intermediate node Q_(L), then a wordline WL is enabled, a supply voltage VDD elevated to the desired stressvoltage while the bit line BL is set at the desired voltage that inducesthe current to flow through the P-device connected between VDD and thefirst intermediate storage node Q_(L). For instance, the bit line BL canbe set to a voltage lower than the voltage at the first intermediatenode Q_(L) to ensure that a stress current flowing through the currentpath 1430 is strong enough to induce self-heating for repairing theP-type device PU_(L).

Similarly, a P-type device (e.g. pull-up transistor PU_(R)) on thecurrent path 1435 can be repaired by writing a high data value “1” atthe second intermediate node Q_(R), then a word line WL is enabled, asupply voltage VDD elevated to the desired stress voltage while thecomplementary bit line BLB is set at the desired voltage that inducesthe current to flow through the P-device connected between VDD and thesecond intermediate storage node Q_(R). For instance, the complementarybit line BLB can be set to a voltage lower than the voltage at thesecond intermediate node Q_(R) to ensure that a stress current flowingthrough the current path 1435 is strong enough to induce self-heatingfor repairing the P-type device PU_(R).

In an embodiment, the performance of each cell being repaired isre-measured (sensed) again after an increment of repair heating time,and the repair is repeated if still needed. The process can be repeateduntil the target performance is achieved.

FIGS. 15A, 15B and 15C are simplified block diagrams of a computersystem suitable for use with embodiments of the present technology, aswell as repair circuit embodiments of the technology. Computer system1510 typically includes at least one processor 1514 which communicateswith a number of peripheral devices via bus subsystem 1512. Theseperipheral devices may include a storage subsystem 1524 including EDAsoftware as described in connection with FIG. 10, with a nanowire celllibrary, to determine critical paths and add repair circuits in thecritical paths as described herein. The storage subsystem can comprise amemory subsystem 1526 and a file storage subsystem 1528, user interfaceinput devices 1522, user interface output devices 1520, and a networkinterface subsystem 1516. The input and output devices allow userinteraction with computer system 1510. Network interface subsystem 1516provides an interface to outside networks, including an interface tocommunication network 1518, and is coupled via communication network1518 to corresponding interface devices in other computer systems.Communication network 1518 may comprise many interconnected computersystems and communication links. These communication links may bewireline links, optical links, wireless links, or any other mechanismsfor communication of information. While, in one embodiment,communication network 1518 is the Internet, communication network 1518may be any suitable computer network.

User interface input devices 1522 may include a keyboard, pointingdevices such as a mouse, trackball, touchpad, or graphics tablet, ascanner, a touchscreen incorporated into the display, audio inputdevices such as voice recognition systems, microphones, and other typesof input devices. In general, use of the term “input device” is intendedto include all possible types of devices and ways to input informationinto computer system 1510 or onto communication network 1518.

User interface output devices 1520 may include a display subsystem, aprinter, a fax machine, or non-visual displays such as audio outputdevices. The display subsystem may include a cathode ray tube (CRT), aflat-panel device such as a liquid crystal display (LCD), a projectiondevice, or some other mechanism for creating a visible image. Thedisplay subsystem may also provide non-visual display such as via audiooutput devices. In general, use of the term “output device” is intendedto include all possible types of devices and ways to output informationfrom computer system 1510 to the user or to another machine or computersystem.

Storage subsystem 1524 stores the basic programming and data constructsthat provide the functionality of some or all of the EDA tools describedherein, and tools applied for development of cells for the library andfor physical and logical design using the library. These modules aregenerally executed by processor 1514. The tools include logic toidentify a particular device having a particular transistor with ananowire channel, and add to the integrated circuit design a controllerwhich, when activated, repairs the particular transistor byself-heating. The tools also include the logic to analyze an integratedcircuit design in inserting repair circuits as describe above.

Memory subsystem 1526 typically includes a number of memories includinga main random access memory (RAM) 1530 for storage of instructions anddata during program execution and a read only memory (ROM) 1532 in whichfixed instructions are stored. File storage subsystem 1528 providespersistent storage for program and data files, and may include a harddisk drive, a floppy disk drive along with associated removable media, aCD-ROM drive, an optical drive, or removable media cartridges. Thedatabases and modules implementing the functionality of certainembodiments may be stored by file storage subsystem 1528.

Bus subsystem 1512 provides a mechanism for letting the variouscomponents and subsystems of computer system 1510 communicate with eachother as intended. Although bus subsystem 1512 is shown schematically asa single bus, alternative embodiments of the bus subsystem may usemultiple busses.

Computer system 1510 itself can be of varying types including a personalcomputer, a portable computer, a workstation, a computer terminal, anetwork computer, a television, a mainframe, or any other dataprocessing system or user device. Due to the ever-changing nature ofcomputers and networks, the description of computer system 1510 depictedin FIG. 15A is intended only as a specific example for purposes ofillustrating the preferred embodiments. Many other configurations ofcomputer system 1510 are possible having more or less components thanthe computer system depicted in FIG. 15A.

FIG. 15B shows a memory 1540 such as a non-transitory, computer readabledata storage medium associated with file storage subsystem 1528, and/orwith network interface subsystem 1516, and can include a data structurespecifying a circuit design that includes cells from the nanowire celllibrary, or other nanowire cell-based cells. In other embodiments, thememory 1540 stores a cell library that includes cells implemented usinga flexible nanowire cell structure. The memory 1540 can be a hard disk,a floppy disk, a CD-ROM, an optical medium, removable media cartridge,or other medium that stores computer readable data in a volatile ornon-volatile form. The memory 1540 is shown storing a circuit design1580, including for example a description of geometric features of logiccircuitry implementing a path including a particular device having atransistor with a nanowire channel; and a repair circuit connected tothe particular device in the path, the repair circuit including aselection block selecting among a plurality of signals as an inputsignal to the particular device, created with the technology describedherein. The plurality of signals can include a repair signal and anoperational logic signal, the repair signal being such as to apply theself-heating stress to the nanowire channel of the particular devicewhen activated. The circuit design 1580 can include for example memorycells having transistors with nanowire channels. The circuit design 1580can include a controller configured to repair a particular transistorwith a nanowire channel by self-heating as described herein. Forexample, the particular transistor with a nanowire channel can be in aparticular device in a path in the logic circuitry, or in a memory cell.The technology described herein improves the EDA process, enabling moreeffective utilization of nanowire devices and other devices having widevariability in operating parameters. Also, the design tools using thistechnology are also improved and can operate more effectively, so thatfinal designs using nanowire devices can be reached with less processingresources.

FIG. 15C is a block representing an integrated circuit 1590 created withthe described technology that includes nanowire cells, and a controllerconfigured to repair a particular transistor with a nanowire channel byself-heating. The integrated circuit can include a path in the logiccircuitry, the path including a particular device having a transistorwith a nanowire channel; and a repair circuit connected to theparticular device in the path, the repair circuit including a selectionblock selecting among a plurality of signals as an input signal to theparticular device. The plurality of signals can include a repair signaland an operational logic signal, the repair signal being such as toapply the self-heating stress to the nanowire channel of the particulardevice when activated. The controller can be configured to perform arepair process on a nanowire channel of a transistor in a particulardevice in the path, using the repair circuit as described herein. Theintegrated circuit can include memory cells having transistors withnanowire channels, and the controller can be configured to perform arepair process on a nanowire channel of a transistor in a memory cell asdescribed herein.

FIG. 16 illustrates an example of an apparatus comprising logic torepair logic circuitry with devices having transistors with nanowirechannels and/or memory cells having transistors with nanowire channelson an integrated circuit. The logic can include calculating a timingslack of a repairable path in the logic circuitry; and if the calculatedtiming slack is negative, then applying a stress on a particular devicehaving a transistor with a nanowire channel in the repairable path tochange the timing slack of the repairable path. In this example, theapparatus comprise a processor system 1610 used for executing or causingexecution of a process to repair the logic circuitry and/or memory cellsas discussed herein, on an integrated circuit 1640. The integratedcircuit 1640 is connected to the system 1610 during manufacturing beforepackaging, such as in wafer form in some embodiments. In otherembodiments, the system 1610 can be connected to the integrated circuitin a packaged form.

The logic can include determining a memory cell that has a read currentbelow a passing criteria, where the memory cell has a transistor with ananowire channel on a current path through which the read current flows;and applying a stress on the memory cell to repair the nanowire channelof the transistor in the memory cell on the current path. In thisexample, the apparatus comprise a processor system 1610 used forexecuting or causing execution of a process to repair the memory cell asdiscussed herein, on an integrated circuit 1640. The integrated circuit1640 is connected to the system 1610 during manufacturing beforepackaging, such as in wafer form in some embodiments. In otherembodiments, the system 1610 is connected to the integrated circuit in apackaged form.

An example system used for executing a process to repair memory cells onan integrated circuit can include programmed process executed in amanufacturing line using equipment used for testing, or using equipmentlike that used for testing, which include circuitry for accessing theintegrated circuit such as wafer probe circuits, voltage sources, andthe like. For example a manufacturing line may have multiple devicetesters, multiple device probers, multiple device handlers, and multipleinterface test adapters configured to connect to the integrated circuitswhich can be configured to control execution of the procedures describedherein. In an alternative, a system may be configured to interact withpackaged integrated circuits, and may be deployed away from themanufacturing line for the integrated circuit, such as at an assemblyinstallation for an original equipment manufacturer utilizing theintegrated circuits.

As shown in FIG. 16, an example system 1610 includes REPAIR LOGIC andDriver 1620, and a device handler/prober 1630. An integrated circuit1640 to be subjected to the REPAIR LOGIC and Driver 1620 is coupled tothe device handler/prober 1630. The integrated circuit 1640 can includelogic circuitry 1650 with devices having transistors with nanowirechannels 1160 and/or memory cells having transistors with nanowirechannels 1660. During manufacturing of an integrated circuit, the system1610 can perform the actions identified herein to repair the logiccircuitry and/or memory cells on the integrated circuit.

An example integrated circuit in the system 1610 may be an integratedcircuit 1590, as described with reference to FIG. 15C. Duringmanufacturing of the integrated circuit 1590, the system 1610 canperform the actions identified herein to repair the logic circuitry onthe integrated circuit.

Using the present technology as described herein, devices havingnanowire channels in a critical path can be repaired so the criticalpath will not prevent the logic circuitry from performing at the targetclock frequency. Using the present technology as described herein,memory cells having transistors with nanowire channels can be repaired,so memory speed can be restored and the yield of an integrated circuitincluding memory cells having transistors with nanowire channels can beimproved.

The term “nanowire” as used herein is a length of material, for examplesilicon, which has a minimum cross-sectional dimension of less than 10nm, and which can be sheathed by insulating material. A nanowire has a“longitudinal” direction, which as used herein is the direction ofcurrent flow. The “minimum cross-sectional dimension” is the minimumdimension of the material taken in a plane perpendicular to thelongitudinal direction. The “length” of a nanowire, as used herein,refers to its length in the longitudinal direction. Nanowires can befabricated with their longitudinal direction oriented either vertical orhorizontal. Some fabrication processes form horizontally-orientednanowires which are wider in the cross-sectional plane than they aretall, in which case the nanowires are sometimes referred to as“nanosheets”. For purposes of the discussion herein, the terms nanowireand nanosheet are used interchangeably.

Additionally, the term “nanowire” itself, as used herein, does not implyany particular doping profile. Thus, as used herein, a “nanowire” cancontain a longitudinal segment or segments having a conductivity, and ifappropriate for the particular material of the nanowire a dopantconcentration, suitable for operation as a channel of a transistor, asource of a transistor, a drain of a transistor or as an interconnect. A“nanowire transistor”, as used herein, refers to a nanowire having ananowire channel whose conductivity is controlled by a gate stacksurrounding it in the cross-sectional plane, bounded longitudinally bysource/drain regions. A nanowire transistor is sometimes referred to asa “gate all-around field effect transistor” (GAAFET). Horizontallyoriented nanowires can be stacked vertically in different layers, withgate stack material not only surrounding the entire structure includingthe horizontally oriented nanowires, but also between nanowire layers.Such nanowire layers, individually surrounded by gate stack material,are considered herein to constitute separate nanowire channels. Thevertically-adjacent source/drain materials in such stacked structuresare typically (but not necessarily) connected together electrically, orformed as a shared source/drain material for all layers of the stack.Whether or not vertically-adjacent source/drain regions are connectedtogether, the transistors formed in each layer are considered herein toconstitute separate nanowire transistors as the term is used herein.

We claim as follows:
 1. A method for improving an integrated circuitdesign which has transistors with nanowire channels, comprising:identifying a particular device having a particular transistor with ananowire channel; and adding to the integrated circuit design acontroller which, when activated, repairs the particular transistor byself-heating.
 2. A method for improving an integrated circuit designincluding logic circuitry with devices having transistors with nanowirechannels, comprising: determining a critical path in the logiccircuitry, the critical path including a particular device having atransistor with a nanowire channel; and adding a repair circuit to theintegrated circuit design connected to the particular device in thecritical path, the repair circuit when activated applying a self-heatingstress to the particular device in the critical path.
 3. The method ofclaim 2, the repair circuit including a selection block selecting amonga plurality of signals as an input signal to the particular device, theplurality of signals including a repair signal and an operational logicsignal, the repair signal being such as to apply the self-heating stressto the nanowire channel of the particular device when activated.
 4. Themethod of claim 3, comprising: adding a signal source to the integratedcircuit design to generate the repair signal as a time varying signalcausing the particular device to switch repeatedly, at a rate or ratessufficient to induce the self-heating stress to the nanowire channel ofthe particular device.
 5. The method of claim 3, comprising: adding atwo level power supply to the integrated circuit design, the two levelpower supply providing a first supply voltage and a second supplyvoltage higher than the first supply voltage; and adding a controller tothe integrated circuit design, the controller configured to provide thesecond supply voltage to the particular device while selecting therepair signal as the input signal to the particular device via theselection block, and to provide the first supply voltage to theparticular device while selecting the operational logic signal as theinput signal to the particular device via the selection block.
 6. Themethod of claim 3, the method further comprising calculating a timingslack of each of a plurality of signal paths in the logic circuitry,wherein said determining a critical path comprises choosing a signalpath in which the calculated timing slack is negative.
 7. A method forrepairing logic circuitry with devices having transistors with nanowirechannels on an integrated circuit, comprising: identifying in the logiccircuitry a repairable path which has a negative timing slack; andapplying a stress on a particular device having a transistor with ananowire channel in the repairable path to change the timing slack ofthe repairable path.
 8. The method of claim 7, wherein identifying arepairable path comprises sensing speed of the repairable path.
 9. Themethod of claim 7, comprising: measuring static leakage current of theintegrated circuit; and before applying the stress, determining that thestatic leakage current of the integrated circuit is below a leakagelimit of the integrated circuit.
 10. The method of claim 7, wherein saidapplying the stress causes an increase in the read current through therepairable path including the nanowire channel of the transistor. 11.The method of claim 7, wherein said applying the stress induces aself-heating stress to the nanowire channel of the particular device,the self-heating stress causing diffusion into the nanowire channel ofsource and drain dopants of the transistor in the particular device. 12.The method of claim 7, comprising: repeating said applying the stressuntil the timing slack of the repairable path is not negative, eachrepetition of said applying the stress doing so for an increasedduration than the previous occurrence of said applying the stress. 13.The method of claim 7, wherein the logic circuitry includes a repaircircuit connected to the particular device in the repairable path, therepair circuit including a selection block selecting as an input signalto the particular device from among a plurality of signals including arepair signal and an operational logic signal, and the integratedcircuit includes a two level power supply providing a first supplyvoltage and a second supply voltage higher than the first supplyvoltage, said applying the stress comprising: providing the secondsupply voltage to the particular device; and selecting the repair signalas the input signal to the particular device via the selection block.14. The method of claim 13, wherein the repair signal is a time varyingsignal causing the particular device to switch repeatedly, at a rate orrates sufficient to induce the self-heating stress to the nanowirechannel of the particular device.
 15. The method of claim 13, whereinthe logic circuitry includes a second repairable path including a seconddevice having a transistor with a nanowire channel, and a second repaircircuit connected to the second device in the second repairable path,the second repair circuit including a second selection block selectingamong a plurality of signals as a second input signal to the seconddevice, the plurality of signals including a second repair signal and asecond operational logic signal, the second repair signal being such asto apply a self-heating stress to the nanowire channel of the seconddevice when activated, the method comprising: selecting the secondrepair signal as the second input signal to the second device via thesecond selection block, while said selecting the repair signal as theinput signal to the particular device, the second repair signal being atime varying signal causing the second device to switch repeatedly, at arate or rates sufficient to induce a self-heating stress to the nanowirechannel of the second device.
 16. A tangible non-transitory computerreadable medium storing computer readable instructions executable by acomputer system, including: computer instructions executable by thecomputer system to improve an integrated circuit design including logiccircuitry with devices having transistors with nanowire channels, thecomputer instructions which when executed by a processor in the computersystem perform the steps of: determining a critical path in the logiccircuitry, the critical path including a particular device having atransistor with a nanowire channel; and adding a repair circuit to theintegrated circuit design connected to the particular device in thecritical path, the repair circuit when activated applying a self-heatingstress to the particular device in the critical path.
 17. The tangiblenon-transitory computer readable medium of claim 16, the repair circuitincluding a selection block selecting among a plurality of signals as aninput signal to the particular device, the plurality of signalsincluding a repair signal and an operational logic signal, the repairsignal being such as to apply a self-heating stress to the nanowirechannel of the particular device when activated.
 18. The tangiblenon-transitory computer readable medium of claim 17, the computerinstructions comprising: adding a signal source to the integratedcircuit design to generate the repair signal as a time varying signalcausing the particular device to switch repeatedly, at a rate or ratessufficient to induce the self-heating stress to the nanowire channel ofthe particular device.
 19. The tangible non-transitory computer readablemedium of claim 17, the computer instructions comprising: adding a twolevel power supply to the integrated circuit design, the two level powersupply providing a first supply voltage and a second supply voltagehigher than the first supply voltage; and adding a controller to theintegrated circuit design, the controller configured to provide thesecond supply voltage to the particular device while selecting therepair signal as the input signal to the particular device via theselection block, and to provide the first supply voltage to theparticular device while selecting the operational logic signal as theinput signal to the particular device via the selection block.
 20. Thetangible non-transitory computer readable medium of claim 17, thecomputer instructions comprising: calculating a timing slack of each ofa plurality of signal paths in the logic circuitry, wherein saiddetermining a critical path comprises choosing a signal path in whichthe calculated timing slack is negative.
 21. A computer system forimproving an integrated circuit design including logic circuitry withdevices having transistors with nanowire channels, comprising: means fordetermining a critical path in the logic circuitry, the critical pathincluding a particular device having a transistor with a nanowirechannel; and means for adding a repair circuit to the integrated circuitdesign connected to the particular device in the critical path, therepair circuit when activated applying a self-heating stress to theparticular device in the critical path.
 22. The computer system of claim21, the repair circuit including a selection block selecting among aplurality of signals as an input signal to the particular device, theplurality of signals including a repair signal and an operational logicsignal, the repair signal being such as to apply a self-heating stressto the nanowire channel of the particular device when activated.
 23. Thecomputer system of claim 22, comprising: means for adding a signalsource to the integrated circuit design to generate the repair signal asa time varying signal causing the particular device to switchrepeatedly, at a rate or rates sufficient to induce the self-heatingstress to the nanowire channel of the particular device.
 24. Thecomputer system of claim 22, comprising: means for adding a two levelpower supply to the integrated circuit design, the two level powersupply providing a first supply voltage and a second supply voltagehigher than the first supply voltage; and means for adding a controllerto the integrated circuit design, the controller configured to providethe second supply voltage to the particular device while selecting therepair signal as the input signal to the particular device via theselection block, and to provide the first supply voltage to theparticular device while selecting the operational logic signal as theinput signal to the particular device via the selection block.
 25. Thecomputer system of claim 22, comprising: means for calculating a timingslack of each of a plurality of signal paths in the logic circuitry,wherein said means for determining a critical path comprises means forchoosing a signal path in which the calculated timing slack is negative.